# 用来表示"真”值或“假”值的数据类型
# 在Pythont中使用标识符True或False表示布尔类型的值
# True表示整数1，False表示整数0
from xmlrpc.client import boolean

a = True
b = False
print(a)  # True
print(type(a))  # <class 'bool'>
print(a + 10)  # 11 --->1+10
print(b + 10)  # 10 --->0+10

print(a == 1)  # True

'''
【布尔值为False的情况如下】
False或者是None
数值中的0，包含0，0.0，虚数0
空序列，包含空字符串、空元组、空列表、空字典、空集合
自定义对象的实例，该对象的__bool__()方法返回False或__len__()方法返回O
'''

# python中万物皆对象，一切皆对象
print(bool(-18))  # 测试整数18的布尔值 True
print(bool(0), bool(0.0))  # 测试整数0和浮点数0.0的布尔值 False False
# 总结：非0的整数布尔值都是 True

print(bool('北京欢迎你'))  # 测试字符串的布尔值 True
print(bool(''))  # 测试空字符串的布尔值 False
print(bool('None'))  # 测试空字符串的布尔值 False
print(bool(None))  # 测试None的布尔值 False
# 总结：非空的字符串布尔值都是 True

# print(bool(0))  # False
# print(bool('0'))  # True
# print(bool(1))  # True
# print(bool('1'))  # True

# 常见的bool类型为False的有：0，空字符串，None，False
